/**
 */
package com.dingpeikeji.quickdeer.core.modules.schedef.entity;

import org.hibernate.validator.constraints.Length;

import java.util.Date;
import java.util.List;

import com.dingpeikeji.quickdeer.core.common.persistence.DataEntity;
import com.google.common.collect.Lists;

/**
 * 班次定义Entity
 * @author Zhaoy
 * @version 2016-05-27
 */
public class TSchedef extends DataEntity<TSchedef> {
	
	private static final long serialVersionUID = 1L;
	
	// 定义类型的值
	public static final String DEF_ORIGIN = "1"; // 原始记录
	public static final String DEF_DISPATCH = "2"; // 调度记录
	
	private String scheid;		// 主键
	private String officeid;
	private String companyid;
	private String schename;
	private String schecode;		// 自定义班次编码，唯一
	private String schetype;		// 班次类型
	private String departtype;		// 发车日期类型
	private String flightno;		// 航班号
	private String auditstatus;		// auditstatus
	private String vehiclenum;		// vehiclenum
	private String totalseats;		// 
	private String canbeuse;		// canbeuse
	private String initstatus;		// initstatus
	private String preselldate;		//预售天数
	private String createby;        //创建人
	private String delflag;
	private List<TSchedefBoard> tSchedefBoardList = Lists.newArrayList();		// 子表列表
	private List<TSchedefOff> tSchedefOffList = Lists.newArrayList();		// 子表列表
	private List<TSchedefVehi> tSchedefVehiList = Lists.newArrayList();		// 子表列表
	
	//用于班次调度
	private String	oriScheid;
	private String	defType;
	private String	startDate;
	private String	endDate;
	private Date	dateissued;
	private Date	stopdate;
	private String	specserv;

	public TSchedef() {
		super();
	}

	public TSchedef(String id){
		super(id);
	}
	
	public String getScheid() {
		return scheid;
	}

	

	public void setScheid(String scheid) {
		this.scheid = scheid;
	}
	
	public String getOfficeid() {
		return officeid;
	}

	public void setOfficeid(String officeid) {
		this.officeid = officeid;
	}

	public String getCompanyid() {
		return companyid;
	}

	public void setCompanyid(String companyid) {
		this.companyid = companyid;
	}

	public String getSchename() {
		return schename;
	}

	public void setSchename(String schename) {
		this.schename = schename;
	}

	@Length(min=1, max=20, message="自定义班次编码，唯一长度必须介于 1 和 10 之间")
	public String getSchecode() {
		return schecode;
	}

	public void setSchecode(String schecode) {
		this.schecode = schecode;
	}
	
	@Length(min=1, max=1, message="班次类型长度必须介于 1 和 1 之间")
	public String getSchetype() {
		return schetype;
	}

	public void setSchetype(String schetype) {
		this.schetype = schetype;
	}
	
	@Length(min=0, max=30, message="发车日期类型长度必须介于 0 和 30 之间")
	public String getDeparttype() {
		return departtype;
	}

	public void setDeparttype(String departtype) {
		this.departtype = departtype;
	}
	
	
	@Length(min=0, max=30, message="航班号长度必须介于 0 和 30 之间")
	public String getFlightno() {
		return flightno;
	}

	public void setFlightno(String flightno) {
		this.flightno = flightno;
	}
	
	
	@Length(min=1, max=1, message="auditstatus长度必须介于 1 和 1 之间")
	public String getAuditstatus() {
		return auditstatus;
	}

	public void setAuditstatus(String auditstatus) {
		this.auditstatus = auditstatus;
	}
	
	public String getVehiclenum() {
		return vehiclenum;
	}

	public void setVehiclenum(String vehiclenum) {
		this.vehiclenum = vehiclenum;
	}
	
	public String getTotalseats() {
		return totalseats;
	}

	public void setTotalseats(String totalseats) {
		this.totalseats = totalseats;
	}
	
	@Length(min=1, max=1, message="canbeuse长度必须介于 1 和 1 之间")
	public String getCanbeuse() {
		return canbeuse;
	}

	public void setCanbeuse(String canbeuse) {
		this.canbeuse = canbeuse;
	}
	
	@Length(min=1, max=1, message="initstatus长度必须介于 1 和 1 之间")
	public String getInitstatus() {
		return initstatus;
	}
	
	public String getPreselldate() {
		return preselldate;
	}

	public void setPreselldate(String preselldate) {
		this.preselldate = preselldate;
	}

	public void setInitstatus(String initstatus) {
		this.initstatus = initstatus;
	}
	
	public List<TSchedefBoard> getTSchedefBoardList() {
		return tSchedefBoardList;
	}

	public void setTSchedefBoardList(List<TSchedefBoard> tSchedefBoardList) {
		this.tSchedefBoardList = tSchedefBoardList;
	}
	public List<TSchedefOff> getTSchedefOffList() {
		return tSchedefOffList;
	}

	public void setTSchedefOffList(List<TSchedefOff> tSchedefOffList) {
		this.tSchedefOffList = tSchedefOffList;
	}
	public List<TSchedefVehi> getTSchedefVehiList() {
		return tSchedefVehiList;
	}

	public void setTSchedefVehiList(List<TSchedefVehi> tSchedefVehiList) {
		this.tSchedefVehiList = tSchedefVehiList;
	}

	public List<TSchedefBoard> gettSchedefBoardList() {
		return tSchedefBoardList;
	}

	public void settSchedefBoardList(List<TSchedefBoard> tSchedefBoardList) {
		this.tSchedefBoardList = tSchedefBoardList;
	}

	public List<TSchedefOff> gettSchedefOffList() {
		return tSchedefOffList;
	}

	public void settSchedefOffList(List<TSchedefOff> tSchedefOffList) {
		this.tSchedefOffList = tSchedefOffList;
	}

	public List<TSchedefVehi> gettSchedefVehiList() {
		return tSchedefVehiList;
	}

	public void settSchedefVehiList(List<TSchedefVehi> tSchedefVehiList) {
		this.tSchedefVehiList = tSchedefVehiList;
	}



	public String getCreateby() {
		return createby;
	}

	public void setCreateby(String createby) {
		this.createby = createby;
	}


	public String getDelflag() {
		return delflag;
	}

	public void setDelflag(String delflag) {
		this.delflag = delflag;
	}

	public String getStartDate() {
		return startDate;
	}

	public void setStartDate(String startDate) {
		this.startDate = startDate;
	}

	public String getEndDate() {
		return endDate;
	}

	public void setEndDate(String endDate) {
		this.endDate = endDate;
	}

	public String getOriScheid() {
		return oriScheid;
	}

	public void setOriScheid(String oriScheid) {
		this.oriScheid = oriScheid;
	}

	public String getDefType() {
		return defType;
	}

	public void setDefType(String defType) {
		this.defType = defType;
	}

	public Date getStopdate() {
		return stopdate;
	}

	public void setStopdate(Date stopdate) {
		this.stopdate = stopdate;
	}

	public Date getDateissued() {
		return dateissued;
	}

	public void setDateissued(Date dateissued) {
		this.dateissued = dateissued;
	}

	public String getSpecserv() {
		return specserv;
	}

	public void setSpecserv(String specserv) {
		this.specserv = specserv;
	}	
}
